home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 008a / paragen2.zip / INVOICE.C < prev    next >
C/C++ Source or Header  |  1991-03-28  |  5KB  |  134 lines

  1. /*----------------------------------------------------------------
  2.             INVOICE.C Generated by PARAGen version 2.20          
  3. ------------------------------------------------------------------
  4.   PROJECT         : Demo invoice program
  5.   AUTHOR          : Innovative Data Solutions, Inc.
  6.   DATE            : 03/14/1991
  7.   TIME            : 07:05PM
  8.   CODING STYLE    : 2  - [Standard C]
  9.   TAB EXPANSION   : ON
  10.   TABLE           : INVOICE.DB - [Fields: 7, Key Fields: 2]
  11.   DATABASE FIELDS          PARADOX                   PARAGEN
  12.                            -------                   -------
  13.                     (01) - Catalog Number            CatalogNumber             
  14.                     (02) - Invoice Number            InvoiceNumber             
  15.                     (03) - Invoice Date              InvoiceDate               
  16.                     (04) - Unit Price                UnitPrice                 
  17.                     (05) - Amount                    Amount                    
  18.                     (06) - Discount                  Discount                  
  19.                     (07) - Ship Via                  ShipVia                   
  20.   GENERATED BY    : Innovative Data Solutions, Inc. Paradox Code Generator
  21.                     4318 Stewart Court
  22.                     East Chicago, IN 46312
  23.                     (219)-397-8952
  24. -----------------------------------------------------------------*/
  25.  
  26. /*----------------------------------------------------------------
  27.                         Global Defines                            
  28. ------------------------------------------------------------------
  29.   BUFFERED - is used in the PXTblOpen call to establish whether 
  30.              writes should be buffered or not (SEE engine manual)
  31.              (TRUE)  - save records to disk as they are posted
  32.              (FALSE) - buffer above records for speed purposes
  33.   GLOBAL   - Global define used to declare global variables.  If it
  34.              is defined variables are declared, otherwise they are
  35.              external so you can reference them in another module
  36. -----------------------------------------------------------------*/
  37.  
  38. #define BUFFERED FALSE
  39. #define GLOBAL 1
  40.  
  41. /*----------------------------------------------------------------
  42.                            Include Files                          
  43. -----------------------------------------------------------------*/
  44.  
  45. #include "invoice.h"
  46. #include "pxengine.h"
  47.  
  48. /*----------------------------------------------------------------
  49.                            Code Starts                            
  50. -----------------------------------------------------------------*/
  51.  
  52. int INVOICEError(int ErrCode)
  53. {
  54.     if (ErrCode)        
  55.         return(ErrCode);
  56.     return(PXSUCCESS);
  57. }
  58.  
  59. int INVOICETblOpen(char *Password)
  60. {
  61.     if (Password)
  62.         {
  63.         INVOICERet = PXPswAdd(Password);
  64.         INVOICERetMacro();
  65.         }
  66.     INVOICERet = PXTblOpen("INVOICE",&INVOICETable,0,BUFFERED);
  67.     INVOICERetMacro();
  68.     INVOICERet = PXRecBufOpen(INVOICETable,&INVOICERecord);
  69.     INVOICERetMacro();
  70.     INVOICERet = PXFldHandle(INVOICETable,"Catalog Number",&INVOICECatalogNumber);
  71.     INVOICERetMacro();
  72.     INVOICERet = PXFldHandle(INVOICETable,"Invoice Number",&INVOICEInvoiceNumber);
  73.     INVOICERetMacro();
  74.     INVOICERet = PXFldHandle(INVOICETable,"Invoice Date",&INVOICEInvoiceDate);
  75.     INVOICERetMacro();
  76.     INVOICERet = PXFldHandle(INVOICETable,"Unit Price",&INVOICEUnitPrice);
  77.     INVOICERetMacro();
  78.     INVOICERet = PXFldHandle(INVOICETable,"Amount",&INVOICEAmount);
  79.     INVOICERetMacro();
  80.     INVOICERet = PXFldHandle(INVOICETable,"Discount",&INVOICEDiscount);
  81.     INVOICERetMacro();
  82.     INVOICERet = PXFldHandle(INVOICETable,"Ship Via",&INVOICEShipVia);
  83.     INVOICERetMacro();
  84.     return(PXSUCCESS);
  85. }
  86.  
  87. int INVOICETblClose(void)
  88. {
  89.     INVOICERet = PXTblClose(INVOICETable);
  90.     INVOICERetMacro();
  91.     return(PXSUCCESS);
  92. }
  93.  
  94. int INVOICESrchFld(int SearchMode,char *FieldToSearch,INVOICETABLEENTRY *RecordVal)
  95. {
  96.     FIELDHANDLE FldHandle;
  97.     long ParaDate;
  98.  
  99.     INVOICERet = PXFldHandle(INVOICETable,FieldToSearch,&FldHandle);
  100.     INVOICERetMacro();
  101.     INVOICERet = PXRecBufEmpty(INVOICERecord);
  102.     INVOICERetMacro();
  103.     switch (FldHandle)
  104.         {
  105.         case 7:            
  106.             INVOICERet = PXPutAlpha(INVOICERecord,INVOICEShipVia,RecordVal->ShipVia);
  107.             break;
  108.  
  109.         }
  110.     INVOICERetMacro();
  111.     INVOICERet = PXSrchFld(INVOICETable,INVOICERecord,FldHandle,SearchMode);
  112.     INVOICERetMacro();
  113.     INVOICERet = PXRecGet(INVOICETable,INVOICERecord);
  114.     INVOICERetMacro();
  115.     INVOICERet = PXGetDoub(INVOICERecord,INVOICECatalogNumber,&RecordVal->CatalogNumber);
  116.     INVOICERetMacro();
  117.     INVOICERet = PXGetDoub(INVOICERecord,INVOICEInvoiceNumber,&RecordVal->InvoiceNumber);
  118.     INVOICERetMacro();
  119.     INVOICERet = PXGetDate(INVOICERecord,INVOICEInvoiceDate,&ParaDate);
  120.     INVOICERetMacro();
  121.     INVOICERet = PXDateDecode(ParaDate,&RecordVal->InvoiceDateMonth,&RecordVal->InvoiceDateDay,&RecordVal->InvoiceDateYear);
  122.     INVOICERetMacro();
  123.     INVOICERet = PXGetDoub(INVOICERecord,INVOICEUnitPrice,&RecordVal->UnitPrice);
  124.     INVOICERetMacro();
  125.     INVOICERet = PXGetDoub(INVOICERecord,INVOICEAmount,&RecordVal->Amount);
  126.     INVOICERetMacro();
  127.     INVOICERet = PXGetDoub(INVOICERecord,INVOICEDiscount,&RecordVal->Discount);
  128.     INVOICERetMacro();
  129.     INVOICERet = PXGetAlpha(INVOICERecord,INVOICEShipVia,FSZSHIPVIA+1,RecordVal->ShipVia);
  130.     INVOICERetMacro();
  131.     return(PXSUCCESS);
  132. }
  133.  
  134.